Wang Haihua
🍈 🍉🍊 🍋 🍌
尽管上述的线性模型已经能够求解许多实际问题,然而生活中的很多系统的增长趋势往往是非线性的,这时候我们就需要用到非线性拟合。
对于非线性回归问题而言,最简单也是最常见的方法就是多项式回归。多项式(Polynomial)是代数学中的基础概念,是由称为未知数的变量和称为系数的常量通过有限次加法、加减法、乘法以及自然数幂次的乘方运算得到的代数表达式。多项式是整式的一种。未知数只有一个的多项式称为一元多项式;例如$x^{2}-3 x+4$就是一个一元多项式。未知数不止一个的多项式称为多元多项式,例如$x^{3}-2 x y z^{2}+2 y z+1$就是一个三元多项式。
接下来,通过多项式来拟合散点数据。一个标准的一元高阶多项式函数如下所示:
$$ y(x, w)=w_{0}+w_{1} x+w_{2} x^{2}+\ldots+w_{m} x^{m}=\sum_{j=0}^{m} w_{j} x^{j} $$其中,$m$表示多项式的阶数,$x^j$表示$x$的$j$次幂,$w$则代表该多项式的系数。当我们使用上面的多项式去拟合散点时,需要确定两个要素,分别是:
这也是多项式的两个基本要素。
如果通过手动指定多项式阶数$m$的大小,那么就只需要确定多项式系数$w$的值是多少。例如,这里首先指定$m=2$,多项式就变成了:
$$ y(x, w)=w_{0}+w_{1} x+w_{2} x^{2}=\sum_{j=0}^{2} w_{j} x^{j} $$当我们确定$w$的值的大小时,就回到了前面线性回归中学习到的内容,具体来说,就是最小化残差平方和(最小二乘法)。
我们还可以用 $$ f_1(x) = x^a + b $$
$$ f_2(x) = ax^2 + b $$等形式对一元函数进行拟合。 最终决定选择什么样的模型(线性或非线性,哪种非线性)则取决于对问题本身的理解以及拟合得效果。
参考文献